package com.itheima.d2_static_method;

/**
 * 1.类方法：static修饰的方法，可以被类名调用，是因为它是随着类的加载而加载的；
 * 		 所以类名直接就可以找到static修饰的方法
 *
 * 2.实例方法：非static修饰的方法，需要创建对象后才能调用，是因为实例方法中可能会访问实例变量，而实例变量需要创建对象后才存在。
 * 		  所以实例方法，必须创建对象后才能调用。
 *
 *  main方法：(第94集)
 *  也是static修饰的类方法，在刚开始写好的.Java结尾的Java程序文件，会用Javac命令编译器来执行这个Test.java文件，接着就会生成.class结尾的字节码文件
 *  接着使用Java命令启动jvm虚拟机，jvm会用类加载器加载需要的类，
 *  其中用Test类名调用main方法：Test.main，String[] args是可以接收一些参数的，可以用命令行窗口的Java命令执行程序的时候传递一些参数并让其输出
 */
public class Test {
    public static void main(String[] args) {
        // 目标：掌握有无static修饰方法的用法。
        // 1、类方法的用法
        // 类名.类方法（推荐）
        Student.printHelloWorld();

        // 对象.类方法（不推荐）
        Student s = new Student();
        s.printHelloWorld();

        // 2、实例方法的用法
        // 对象.实例方法
        s.printPass();
        // Student.printPass(); // 报错
    }


}
